package com.unittec.zk.sdk.root.common;

import java.util.Arrays;
import java.util.List;

/**
 * @author wuxinwei
 */
public class CommonConstant {


    /**
     * 默认角色 1：管理员
     */
    public static final List<String> DEFAULT_ROLE = Arrays.asList("1");

    /**
     * 管理员角色code
     */
    public static final String ADMIN_ROLE_CODE = "admin";

    /**
     * 平台code
     */
    public static final String PLATFORM_CODE_WEB = "111111";
    public static final String PLATFORM_CODE_APP = "222222";

    /**
     * 验证码静态常量
     */
    public static final String LOGIN_VERIFICATION_CODE = "login_verification_code:";
    public static final String LOGIN_VERIFICATION_CODE_TIME = "login_verification_code_time:";

    /**
     *
     */
    public static final String STR_UFT8 = "UTF-8";
    public static final String STR_USR = "usr";
    public static final String STR_OK = "OK";
    public static final String STR_CODE = "Code";
    public static final String STR_$ = "%";

    /**
     * 状态 0：正常，1：异常
     */
    public static final String STATUS_0 = "0";
    public static final String STATUS_1 = "1";

    /**
     * 删除状态 0：正常，1：删除
     */
    public static final String DELETE_NO = "0";
    public static final String DELETE_YES = "1";

    /**
     * 0：一级菜单
     */
    public static final Integer MENU_TYPE_0 = 0;
    /**
     * 1：子菜单
     */
    public static final Integer MENU_TYPE_1 = 1;
    /**
     * 2：按钮权限
     */
    public static final Integer MENU_TYPE_2 = 2;

    /**
     * 是否配置菜单的数据权限 1：是，0：否
     */
    public static final Integer RULE_FLAG_0 = 0;
    public static final Integer RULE_FLAG_1 = 1;

    /**
     * 登录类型(APP端=0，PC端=1)
     */
    public static final String LOGIN_TYPE_0 = "0";
    public static final String LOGIN_TYPE_1 = "1";

    /**
     * 字典翻译文本后缀
     */
    public static final String DICT_TEXT_SUFFIX = "_dictText";

    /**
     * 文件类型 0：默认图片，1：视频，2:其他
     */
    public static final String FILE_TYPE_0 = "0";
    public static final String FILE_TYPE_1 = "1";
    public static final String FILE_TYPE_2 = "2";

    /**
     * 大小
     */
    public static final int SIZE_0 = 0;
    public static final int SIZE_1 = 1;
    public static final int SIZE_2 = 2;
    public static final int SIZE_3 = 3;
    public static final int SIZE_4 = 4;
    public static final int SIZE_5 = 5;
    public static final int SIZE_10 = 10;
    public static final int SIZE_11 = 11;
    public static final int SIZE_16 = 16;
    public static final int SIZE_32 = 32;
    public static final int SIZE_150 = 150;
    public static final int SIZE_1000000 = 1000000;

    /**
     * 系统环境
     */
    public static final String ACTIVE_PROFILE_DEV = "dev";
    public static final String ACTIVE_PROFILE_TEST = "test";
    public static final String ACTIVE_PROFILE_PRO = "pro";

    /**
     * 文件处理状态 0:待处理，1:处理中，2:处理完成，3:处理失败
     */
    public static final String FILE_STATUS_0 = "0";
    public static final String FILE_STATUS_1 = "1";
    public static final String FILE_STATUS_2 = "2";
    public static final String FILE_STATUS_3 = "3";

    /**
     *
     */
    public static final String BUSINESS_ID = "business_id";
    /**
     *
     */
    public static final String INSPECTION_PLAN_JOB_CODE = "inspection_plan";
    /**
     *
     */
    public static final String FINISH_INSPECTION_PLAN_CODE = "finish_plan";

    /**
     * 巡检计划执行状态 1:新增 2:运行中 3：已暂停 9:已结束
     */

    public static final String CHECK_PLAN_YUN_STATUS_1 = "1";
    public static final String CHECK_PLAN_YUN_STATUS_2 = "2";
    public static final String CHECK_PLAN_YUN_STATUS_3 = "3";
    public static final String CHECK_PLAN_YUN_STATUS_9 = "9";
    /**
     * 节假日运行状态 0: 不执行 1: 执行
     */

    public static final String HOLIDAY_RUN_STATUS_0 = "0";
    public static final String HOLIDAY_RUN_STATUS_1 = "1";
    /**
     * 巡检任务执行状态 10:未开始 19：已关闭 20:巡检中 29：未执行 31:已完成,待审核 40:已归档 81：撤销中 82:延期中
     */

    public static final String CHECK_TASK_YUN_STATUS_10 = "10";
    public static final String CHECK_TASK_YUN_STATUS_19 = "19";
    public static final String CHECK_TASK_YUN_STATUS_20 = "20";
    public static final String CHECK_TASK_YUN_STATUS_29 = "29";
    public static final String CHECK_TASK_YUN_STATUS_31 = "31";
    public static final String CHECK_TASK_YUN_STATUS_40 = "40";
    public static final String CHECK_TASK_YUN_STATUS_81 = "81";
    public static final String CHECK_TASK_YUN_STATUS_82 = "82";

    /**
     * 业务类型 1:巡检任务 2: 故障上报
     */
    public static final short BUSINESS_TYPE_1 = 1;
    public static final short BUSINESS_TYPE_2 = 2;

    /**
     * 故障上报状态，0：已关闭，1：已上报，2：已派遣，3：处理中，4：撤销中，5：已处理，6：已归档
     */
    public static final String FAULT_REPORT_STATUS_0 = "0";
    public static final String FAULT_REPORT_STATUS_1 = "1";
    public static final String FAULT_REPORT_STATUS_2 = "2";
    public static final String FAULT_REPORT_STATUS_3 = "3";
    public static final String FAULT_REPORT_STATUS_4 = "4";
    public static final String FAULT_REPORT_STATUS_5 = "5";
    public static final String FAULT_REPORT_STATUS_6 = "6";

    /**
     * 巡检任务 工作流 任务code
     */
    public static final String ISPECTION_TASK_PROCESS_DEFINITION_KEY = "inspection_task";
    // 开始任务选择
    public static final String PROCESS_CHECK_TASK_BEGIN_SELECT = "CHECK_TASK_BEGIN_SELECT";
    // 驳回审核
    public static final String PROCESS_CHECK_TASK_TURN_DOWN_AUDIT = "CHECK_TASK_TURN_DOWN_AUDIT";
    // 巡检选择
    public static final String PROCESS_CHECK_TASK_SELECT_TASK = "PROCESS_CHECK_TASK_SELECT_TASK";
    // // 继续巡检
    // public static final String PROCESS_CHECK_TASK_CONTINUE_TASK = "CHECK_TASK_CONTINUE_TASK";
    // 继续巡检选择
    public static final String PROCESS_CHECK_TASK_CONTINUE_TASK_SELECT = "PROCESS_CHECK_TASK_CONTINUE_TASK_SELECT";
    // 重启巡检选择
    public static final String PROCESS_CHECK_TASK_RESTART_TASK = "PROCESS_CHECK_TASK_RESTART_TASK";
    // 延期审核
    public static final String PROCESS_CHECK_TASK_POSTPONED_AUDIT = "CHECK_TASK_POSTPONED_AUDIT";
    // 结束巡检
    public static final String PROCESS_CHECK_TASK_FINISH_TASK = "CHECK_TASK_FINISH_TASK";
    // 结束巡检原因填报
    public static final String PROCESS_CHECK_TASK_FINISH_REASON_TO_REPORT = "CHECK_TASK_FINISH_REASON_TO_REPORT";
    // 确认完成巡检
    public static final String PROCESS_CHECK_TASK_CONFIRM_COMPLETE_TASK = "CHECK_TASK_CONFIRM_COMPLETE_TASK";
    // 确认归档
    public static final String PROCESS_CHECK_TASK_ARCHIVE = "CHECK_TASK_ARCHIVE";
    //
    // 审核人
    public static final String PROCESS_CHECK_TASK_BASE_VARIABLES_1 = "reviewer";
    //
    public static final String PROCESS_CHECK_TASK_BASE_VARIABLES_2 = "begin_due_date";
    // 处理人ID
    public static final String PROCESS_CHECK_TASK_BASE_VARIABLES_3 = "handler";
    // 处理人姓名
    public static final String PROCESS_CHECK_TASK_BASE_VARIABLES_4 = "handler_name";
    // 组用户
    public static final String PROCESS_CHECK_TASK_BASE_VARIABLES_5 = "candidate_user";
    /**
     * 候选组
     */
    public static final String PROCESS_CHECK_TASK_BASE_VARIABLES_6 = "candidate_group";
    // 驳回审核结果
    public static final String PROCESS_CHECK_TASK_VARIABLES_1 = "dismissAuditResult";
    // 驳回审核结果描述
    public static final String PROCESS_CHECK_TASK_VARIABLES_2 = "dismissAuditReason";
    // 巡检任务ID
    public static final String PROCESS_CHECK_TASK_VARIABLES_3 = "CHECK_TASK_id";

    // 延期时间
    public static final String PROCESS_CHECK_TASK_VARIABLES_4 = "extensionTime";
    // 延期理由
    public static final String PROCESS_CHECK_TASK_VARIABLES_5 = "extensionReason";
    // 延期审批理由
    public static final String PROCESS_CHECK_TASK_VARIABLES_6 = "extensionApprovalReason";
    // 延期审批结果
    public static final String PROCESS_CHECK_TASK_VARIABLES_7 = "extensionApprovalResult";
    // 继续巡检选择 结果 1: 结束 0 暂停
    public static final String PROCESS_CHECK_TASK_VARIABLES_8 = "continueInspectionSelectionResult";
    // 是否全部完成 1 没有全部完成 0: 已全部完成
    public static final String PROCESS_CHECK_TASK_VARIABLES_9 = "isAllCompleted";
    // 评价
    public static final String PROCESS_CHECK_TASK_VARIABLES_10 = "evaluationDescription";
    // 评价级别
    public static final String PROCESS_CHECK_TASK_VARIABLES_11 = "evaluationLevel";
    // 自动归档时间
    public static final String PROCESS_CHECK_TASK_VARIABLES_12 = "automaticArchivingTime";
    // 是否延期
    public static final String PROCESS_CHECK_TASK_VARIABLES_13 = "is_postponed";
    // 驳回理由
    public static final String PROCESS_CHECK_TASK_VARIABLES_14 = "reasonForRejection";
    //
    public static final String PROCESS_CHECK_TASK_VARIABLES_15 = "isTurnDown";
    public static final String PROCESS_CHECK_TASK_VARIABLES_16 = "completeAuditResult";

    public static final String SPONSOR = "sponsor";

    /**
     * 工单工作流KEY
     */
    public static final String WORK_ORDER_PROCESS_DEFINITION_KEY = "workorder";

    public static final String TRIGGER_TYPE_SIMPLE = "simple";
    public static final String TRIGGER_TYPE_CRON = "cron";
    /**
     * 巡检任务 驳回审核结果 确认结果 1:不通过 0 通过
     */
    public static final short CHECK_TASK_TURN_DOWN_Audit_1 = 1;
    public static final short CHECK_TASK_TURN_DOWN_Audit_0 = 0;
    /**
     * 巡检任务 驳回审核结果 确认结果 1:不通过 0 通过
     */
    public static final String CHECK_TASK_COMPLETE_AUDIT_1 = "1";
    public static final String CHECK_TASK_COMPLETE_AUDIT_0 = "0";
    /**
     * 巡检任务 继续巡检选择 结果 1:暂停巡检 0: 结束巡检
     */
    public static final short CHECK_TASK_CONTINUE_SELECT_1 = 1;
    public static final short CHECK_TASK_CONTINUE_SELECT_0 = 0;

    /**
     * 巡检任务 是否全部完成 1:没有全部完成 0:全部完成
     */
    public static final short CHECK_TASK_IS_ALL_COMPLETE_1 = 1;
    public static final short CHECK_TASK_IS_ALL_COMPLETE_0 = 0;

    /**
     * 巡检任务 延期审核结果 确认结果 1:不通过 0 通过
     */
    public static final short CHECK_TASK_APPLY_EXTENSION_AUDIT_1 = 1;
    public static final short CHECK_TASK_APPLY_EXTENSION_AUDIT_0 = 0;

    /**
     * 文件业务类型(1:巡检事件，2:热线事件，3:营销事件)
     */
    public static final String YWXJ_FILE_TYPE_CHECK = "1";
    public static final String YWXJ_FILE_TYPE_HOTLINE = "2";
    public static final String YWXJ_FILE_TYPE_MARTETING = "3";
    public static final String YWXJ_FILE_TYPE_CHECK_PLAN = "4";
    public static final String YWXJ_FILE_TYPE_CHECK_TASK = "5";
    public static final String YWXJ_FILE_TYPE_CHECK_TASK_TRACK = "6";

    /**
     * 巡检周期 1：日，2：周，3：月
     */
    public static final String CHECK_PERIOD_1 = "1";
    public static final String CHECK_PERIOD_2 = "2";
    public static final String CHECK_PERIOD_3 = "3";

    /**
     * 巡检事件状态(1：未审核，2：已审核，3：已派单，4：已修复，5：转水表维修，6：转管网维修，0：已完结)
     */
    public static final String CHECK_EVENT_STATE_0 = "0";
    public static final String CHECK_EVENT_STATE_1 = "1";
    public static final String CHECK_EVENT_STATE_2 = "2";
    public static final String CHECK_EVENT_STATE_3 = "3";
    public static final String CHECK_EVENT_STATE_4 = "4";
    public static final String CHECK_EVENT_STATE_5 = "5";
    public static final String CHECK_EVENT_STATE_6 = "6";

    /**
     * 流程图定义key(1:巡检流程，2：管网维修流程，3：水表维修流程)
     */
    public static final String PROCCESS_DEFINITON_1 = "inspection_task";
    public static final String PROCCESS_DEFINITON_2 = "pipeWork_process";
    public static final String PROCCESS_DEFINITON_3 = "waterMeter_process";

    /**
     * 巡检状态 0：未巡检 1：已巡检
     */
    public static final String CHECK_TASK_ITEM_YUN_STATUS_0 = "0";
    public static final String CHECK_TASK_ITEM_YUN_STATUS_1 = "1";

    /**
     * * 巡检结果状态 0：异常， 1：正常
     */

    public static final short CROSSING_STATUS_0 = 0;
    public static final short CROSSING_STATUS_1 = 1;

    /**
     * 状态 0 正常 1 异常
     */
    public static final String DEVICE_CHECK_STATUS_0 = "0";
    public static final String DEVICE_CHECK_STATUS_1 = "1";
    /**
     * 巡检结果状态 1:未开始 2 好 3: 差
     */
    public static final String CHECK_TASK_ITEM_REAULT_STATUS_1 = "1";
    public static final String CHECK_TASK_ITEM_RESULT_STATUS_2 = "2";
    public static final String CHECK_TASK_ITEM_RESULT_STATUS_3 = "3";

    public static final String PROCESS_DEFINITON_1 = "inspection_task";
    public static final String PROCESS_DEFINITON_2 = "pipeNetwork_process";
    public static final String PROCESS_DEFINITON_3 = "waterMeter_process";

    /**
     * 维修任务类型(1：管网，2：水表)
     */
    public static final String TASK_PIPENETWORK = "1";
    public static final String TASK_WATERMETER = "2";

    /**
     * 是否生成周末任务 0：否，1：是
     */
    public static final String WEEK_JOB_0 = "0";
    public static final String WEEK_JOB_1 = "1";
}
